package com.static_;

/**
 * @Author 小闽
 * @Date 2024/9/6 8:52
 * @PackageName: com.static_
 * @ClassName: StaticMain
 * @Description: 主方法
 * @Version 1.0
 */
public class StaticMain {
    // 1）	在main()方法中，我们可以直接调用main方法所在类的静态方法或静态属性。
    private static int n1 = 100;
    // 非静态成员/属性
    private int n2 = 200;
    public static void hello(){
        System.out.println("这是静态方法");
    }
    // 2）	但是，不能直接访问该类中的非静态成员，必须创建该类的一个实例后，
    //      才能通过这个对象去访问类中的非静态成员。
    public void cry(){
        System.out.println("这是非静态的cry方法");
    }
    public static void main(String[] args) {
        // 可以直接访问静态的n1的变量和静态方法。
        System.out.println("n1的值是：" + n1);
        hello();
        // 访问非静态属性/成员会报错
//        System.out.println("n2=" + n2);
        // 如果需要在静态方法中访问非静态方法，则需要创建一个对象来访问
        StaticMain staticMain = new StaticMain();
        System.out.println(StaticMain.n1);
        staticMain.cry();
    }
}
